/**
 * File: IdentifierFilepositionIndex.java
 * Created by: mhaimel
 * Created on: 15 Jul 2009
 * CVS:  $Id: IdentifierFilepositionIndex.java,v 1.1 2009/08/05 15:16:11 mhaimel Exp $
 */
package uk.ac.ebi.curtain.service;

import java.io.Closeable;
import java.io.File;

import uk.ac.ebi.curtain.service.impl.IdentifierFilepositionIndexImpl;
import uk.ac.ebi.curtain.util.FileIndexReader;
import uk.ac.ebi.curtain.util.FileIndexWriter;

import com.google.inject.ImplementedBy;

/**
 * @author mhaimel
 *
 */
@ImplementedBy(IdentifierFilepositionIndexImpl.class)
public interface IdentifierFilepositionIndex extends Closeable {
	
	boolean isReadable();
	boolean isWriteable();
	boolean setReadOnly();
	boolean setWriteOnly();

	FileIndexWriter getWriter();

	FileIndexReader getReader();
	
	File getFile();
	void synchronize();	
	
}
